package body v8.Class_Type_Switch is


   function Create (a_type : v8.Class_Function_Template.Pointer) return Pointer is
      function Invoke (a_type : v8.Class_Function_Template.Pointer) return Pointer;
      pragma Import (CPP, Invoke, "_ZN2v810TypeSwitch3NewENS_6HandleINS_16FunctionTemplateEEE");
   begin
      return Invoke (a_type);
   end Create;
   pragma Inline (Create);

   function Create (types : v8.Class_Function_Template.Function_Template_Array) return Pointer is
      function Invoke (argc : int; types : v8.Class_Function_Template.Function_Template_Array) return Pointer;
      pragma Import (CPP, Invoke, "_ZN2v810TypeSwitch3NewEiPNS_6HandleINS_16FunctionTemplateEEE");
   begin
      return Invoke (types'Length, types);
   end Create;
   pragma Inline (Create);


end v8.Class_Type_Switch;
